package org.dromara.patrol.domain.model;

import jakarta.validation.Valid;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

import java.io.Serial;
import java.io.Serializable;
import java.util.List;

@Data
public class PatrolExecutors implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 门店id
     */
    @NotNull(message = "门店id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long storeId;
    /**
     * 门店名称
     */
    private String storeName;
    /**
     * 部门id
     */
    private Long departmentId;
    /**
     * 部门名称
     */
    private String departmentName;
    /**
     * 角色id
     */
    private Long roleId;
    /**
     * 角色名称
     */
    private String roleName;
    /**
     * 执行人
     */
    @Valid
    @NotEmpty(message = "巡检人员相关不能为空", groups = { AddGroup.class, EditGroup.class })
    private List<Executors> executors;
}
